// 自定义指令
export const imageerror = {
    // 钩子函数
    inserted(dom, options) {
        // options 是指令中的变量的解释，其中有一个属性叫做value
        // 图片异常的逻辑
        // 监听img标签的错误事件，因为图片加载失败 会触发onerror事件
        // dom.src = dom.src || options.value
        // dom元素的src属性是null或者是undefined的情况下
        // 初始化的时候 如果有值则赋值 如果没值 则需要进行默认值赋值
        if (!dom.src) {
            // 将默认图片路径去设置给dom元素的src
            dom.src = options.value
        }
        // 当图片有地址，但是地址没有加载成功的时候 会报错，会触发图片的一个事件 =》onerror
        dom.onerror = function () {
            // 图片失败 赋值一个默认的图片
            dom.src = options.value
        }
    },
    // 组件更新的时候触发钩子函数
    // inserted 只会执行一次 一旦更新 会进入componentUpdated
    componentUpdated(dom, options) {
        // 该钩子函数会在当前指令作用的组件 更新数据完毕之后 执行
        // inserted只会执行一次
        // 组件初始化 一旦更新就会进入componentUpdated 不会再进入inserted函数了
         dom.src = dom.src || options.value
    }
}

